Imports System.Xml
Imports System.Data.SqlClient
Public Class dOrdenServicio
    Public Function Existe(ByVal CodigoOrdenServicio As String) As Boolean
        Dim Parametros As ArrayList = New ArrayList
        Parametros.Add(New SqlParameter("@pECodigoOrdenServicio", CodigoOrdenServicio))
        Return (dConexion.Consultar("STORE_TblOrdenDeServiciosBuscarFiltrado", Parametros).Tables(0).Rows(0).ItemArray(0) = 1)
    End Function
    Public Function Insertar(ByVal FechaGeneracion As Date, ByVal Observaciones As String, ByVal estado As String, ByVal CodigoSolicitudServicios As Long) As Boolean
        Dim Parametros As ArrayList = New ArrayList
        Parametros.Add(New SqlParameter("@pEFechaGeneracion", FechaGeneracion.ToShortDateString))
        Parametros.Add(New SqlParameter("@pEObservacion", Observaciones))
        Parametros.Add(New SqlParameter("@pEEstado", estado))
        Parametros.Add(New SqlParameter("@pECodigoSolicitudServicios", CodigoSolicitudServicios))

        Return dConexion.ABM("STORE_TblOrdenDeServicioAlta", Parametros)
    End Function
    Public Function Eliminar(ByVal CodigoOrdenServicio As String) As Boolean
        Dim Parametros As ArrayList = New ArrayList
        Parametros.Add(New SqlParameter("@pECodigoOrdenServicio", CodigoOrdenServicio))
        Return dConexion.ABM("STORE_TblOrdenDeServicioELIMINAR", Parametros)
    End Function
    Public Function Modificar(ByVal CodigoOrdenServicio As Long, ByVal FechaGeneracion As Date, ByVal Observaciones As String, ByVal estado As String, ByVal CodigoSolicitudServicios As Long) As Boolean
        Dim Parametros As ArrayList = New ArrayList
        If CodigoOrdenServicio <> 0 Then
            Parametros.Add(New SqlParameter("@pECodigoOrdenServicio", CodigoOrdenServicio))
        End If
        If FechaGeneracion <> New Date() Then
            Parametros.Add(New SqlParameter("@pEFechaGeneracion", FechaGeneracion.ToShortDateString))
        End If
        If Observaciones <> "" Then
            Parametros.Add(New SqlParameter("@pEObservacion", Observaciones))
        End If

        If estado <> "" Then
            Parametros.Add(New SqlParameter("@pEEstado", estado))
        End If

        If CodigoSolicitudServicios <> 0 Then
            Parametros.Add(New SqlParameter("@pECodigoSolicitudServicios", CodigoSolicitudServicios))
        End If

        Return dConexion.ABM("STORE_TblOrdenDeServicioMODIFICAR", Parametros)
    End Function
    Public Function Buscar(ByVal CodigoOrdenServicio As Long, ByVal FechaGeneracion As Date, ByVal Observaciones As String, ByVal estado As String, ByVal CodigoSolicitudServicios As Long) As DataSet
        Dim Parametros As ArrayList = New ArrayList
        If CodigoOrdenServicio <> 0 Then
            Parametros.Add(New SqlParameter("@pECodigoOrdenServicio", CodigoOrdenServicio))
        End If
        If FechaGeneracion <> New Date() Then
            Parametros.Add(New SqlParameter("@pEFechaGeneracion", FechaGeneracion.ToShortDateString))
        End If
        If Observaciones <> "" Then
            Parametros.Add(New SqlParameter("@pEObservacion", Observaciones))
        End If

        If estado <> "" Then
            Parametros.Add(New SqlParameter("@pEEstado", estado))
        End If

        If CodigoSolicitudServicios <> 0 Then
            Parametros.Add(New SqlParameter("@pECodigoSolicitudServicios", CodigoSolicitudServicios))
        End If
        Return dConexion.Consultar("STORE_TblOrdenDeServicioBUSCARFILTRADO", Parametros)
    End Function
    Public Function BuscarFiltrado(ByVal CodigoOrdenServicio As String, ByVal FechaGeneracion As String, ByVal Observaciones As String, ByVal estado As String, ByVal CodigoSolicitudServicios As Long) As DataSet
        Dim Parametros As ArrayList = New ArrayList
        If CodigoOrdenServicio <> "" Then
            Parametros.Add(New SqlParameter("@pECodigoOrdenServicio", CodigoOrdenServicio))
        End If
        If FechaGeneracion <> "" Then
            Parametros.Add(New SqlParameter("@pEFechaGeneracion", FechaGeneracion))
        End If
        If Observaciones <> "" Then
            Parametros.Add(New SqlParameter("@pEObservacion", Observaciones))
        End If
        If estado <> "" Then
            Parametros.Add(New SqlParameter("@pEEstado", estado))
        End If

        If CodigoSolicitudServicios <> 0 Then
            Parametros.Add(New SqlParameter("@pECodigoSolicitudServicios", CodigoSolicitudServicios))
        End If
        Return dConexion.Consultar("STORE_TblOrdenDeServicioBUSCARFILTRADO", Parametros)
    End Function

    Public Function Listar() As DataSet
        Return dConexion.Consultar("STORE_TblOrdenDeServicioBUSCARFILTRADO", New ArrayList)
    End Function
End Class
